"""
from faker import Faker #导入faker模块
faker1 = Faker(locale='zh_cn') #支持中国
print(faker1.phone_number()) #生成11位手机号
print(faker1.ssn(min_age = 18,max_age = 90))#生成18-90岁的身份证号
print(faker1.name())# 生成姓名
"""
#1.编写一个学生方法，产生一堆学生对象（姓名），传入形参控制学生生成数量

from faker import Faker#1. 导入Faker库。
def aa(bb):#2. 定义一个函数aa，接受一个参数bb。
    for i in range(bb):#3. 在函数内部，使用for循环，循环次数为bb。
        faker = Faker("zh_CN")#4. 在每次循环中，创建一个Faker对象faker1，设置地区为"zh_CN"（即中国）。
        aa=faker.name()#5. 使用faker1的name()方法生成一个随机的中文姓名，并将其赋值给变量aa。
        print(f"学生姓名：{aa}")#6. 打印出学生姓名，格式为"学生姓名：{aa}"。
aa(10)#7. 调用函数aa，传入参数10，生成10个随机的中文姓名并打印出来。

# 2、创建一个方法，用来生成普通人必备的信息：姓名、年龄、住址、身份证号、手机号，随机生成20个写入personinfo.txt里
from faker import Faker
import random
"""
fake = Faker("zh_CN")

def generate_person_info():
    name = fake.name()
    age = random.randint(18, 60)
    address = fake.address()
    id_number = fake.ssn()
    phone_number = fake.phone_number()
    return f"{name}, {age}, {address}, {id_number}, {phone_number}"
with open("personinfo.txt", "w", encoding="utf-8") as f:
    for _ in range(20):
        f.write(generate_person_info())


"""